package com.shop.loan.mapper;

import com.shop.loan.model.entity.UserByMybatis;
import com.shop.loan.model.vo.RejectUserPutVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface UserByMybatisMapper {
    int deleteByPrimaryKey(Long id);

    int insert(UserByMybatis row);

    int insertSelective(UserByMybatis row);

    UserByMybatis selectByPrimaryKey(Long id);

    int updateByPrimaryKeySelective(UserByMybatis row);

    int updateByPrimaryKey(UserByMybatis row);


    UserByMybatis selectByOrderId(@Param("orderId") Long orderId);

    UserByMybatis selectByApplyNo(@Param("otherApplyNo") String otherApplyNo);

    List<String> selectMobileList();

    List<UserByMybatis> selectByBlack(@Param("id") Long id);

    List<RejectUserPutVo> selectByReject(@Param("id") Long id);

    List<Long> selectIdByMobileName(@Param("mobile") String mobile, @Param("name") String name, @Param("cardAddress") String cardAddress);

    List<Long> selectIdByParam(UserByMybatis row);

    UserByMybatis selectByMobile(@Param("mobile") String mobile);

    Integer selectByCardNum(@Param("cardNum") String cardNum);

    Integer selectCountByChannel(@Param("channelId") Long channelId,
                                 @Param("startTime") String startTime,
                                 @Param("endTime") String endTime);

    Integer selectCount(@Param("startTime") String startTime, @Param("endTime") String endTime);

    int updateUserEndNum(@Param("id") Long id);

    int updateUserEndNumBySub(@Param("id") Long id);

    UserByMybatis selectMobileIdcardByMd5(@Param("mobile") String mobile, @Param("cardNum") String id);
}